REM ------------------ ExzJulia ----------------------------------------- REM Julia Set of the exponential map REM REM f(z)=C*exp(z), C=ar+i*ai は与える REM REM 初期値Zo(z-平面上)を与えて軌道 O+(Zo) が発散するか否かを調べる REM 発散の時 カラー色(黒以外)をつける REM 発散しない時 黒 REM 発散は,|f(Zn)|>1.E+25 or Re(Zn)>60 で判定 rem REM ----------------------------------------- Joe --- 5.25 '17 --------- dim it(0 to 5000),b(20),co(20) line input prompt"テスト用(T)ですか本番用(H)ですか? T/H=":tq$ if tq$="H" or tq$="h" then goto 10 LET txl=.3 LET txu=.5 LET tyl=.6 LET tyu=.8 LET n1=200 goto 20 10 LET txl=.1 LET txu=.9 LET tyl=.1 LET tyu=.9 LET n1=600 20 LET r=1.e+50 input prompt"iteration の回数(50以上)=":tm rem print"カラーのinput、外側の色から8個入れよ" rem input co(1),co(2),co(3),co(4),co(5),co(6),co(7),co(8) for k=1 to 8 read co(k) NEXT k DATA 10,6,3,4,4,7,7,7 REM DATA 6,3,5,7,4,4,4,4 REM DATA 4,4,4,3,3,3,3,3 REM DATA 3,6,7,4,4,0,0,0 rem --------------------- LET b(9)=tm for i= 8 to 1 step -1 LET b(i)=int(b(i+1)/1.66+.5) next i LET b(1)=1 PRINT "定数C のinput" INPUT PROMPT"C=(ar,ai)= ":ar,ai PRINT "計算する4角形(Z-plane)のinput" INPUT PROMPT"実軸範囲=":xl,xu INPUT PROMPT"虚軸範囲=":yl,yu rem rem 画像パラメ−タ−設定 rem LET wx=xu-xl LET wy=yu-yl LET twx=txu-txl LET twy=tyu-tyl LET dx=wx/n1 LET dy=wy/n1 LET a1=twx/wx LET a2=twy/wy LET b1=(xu*txl-xl*txu)/wx LET b2=(yu*tyl-yl*tyu)/wy SET AREA COLOR 1 plot area: txl,tyl;txu,tyl;txu,tyu;txl,tyu;txl,tyl PLOT TEXT, AT 0.04,.96:"定数 C =" PLOT TEXT, AT .2,.96,USING"###.####### ###.#######":ar,ai PLOT TEXT, AT 0.04,.92:"Julia-Set, Z-平面 範囲:" PLOT TEXT, AT .35,.92,USING"###.##### ###.#####":xl,xu PLOT TEXT, AT .65,.92,USING"###.##### ###.#####":yl,yu for i=0 to tm+1 LET it(i)=0 next i set point style 1 rem REM 反復開始 rem for i=0 to n1 LET x0=xl+i*dx for j=0 to n1 LET y0=yl+j*dy LET t=0 LET x=x0 LET y=y0 rem -------------------------- 50 LET x1=EXP(x)*(ar*COS(y)-ai*SIN(y)) LET y1=EXP(x)*(ai*COS(y)+ar*SIN(y)) LET d2=SQR(x1*x1+y1*y1) LET t=t+1 IF d2>r OR x1>60 THEN GOTO 60 REM IF x1>50 THEN GOTO 60 if t